package com.example.mqttdemo.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.mqttdemo.entity.dto.DevicesControlDto;
import com.example.mqttdemo.entity.dto.DevicesDto;
import com.example.mqttdemo.entity.pojo.Devices;
import com.example.mqttdemo.entity.pojo.devicesPageQuery;
import com.example.mqttdemo.entity.vo.DeviceCommandVO;
import com.example.mqttdemo.result.Result;

/**
* @author wangzihang
* &#064;description  针对表【devices】的数据库操作Service
* &#064;createDate  2025-10-19 20:01:55
 */
public interface DevicesService extends IService<Devices> {

    /**
     * 添加设备
     * @param devicesDto 设备信息
     * @return 添加结果信息
     */
    Result addDevice(DevicesDto devicesDto);

    /**
     * 分页查询设备列表
     * @param page 设备信息
     * @param pageQuery 查询参数
     * @return 设备列表
     */
    IPage<Devices> pageDevices(IPage<Devices> page, devicesPageQuery pageQuery);

    /**
     * 设备控制 信息下发
     */
    DeviceCommandVO control(DevicesControlDto devicesControlDto);
}
